<script>
export default {
  name: 'Count',
  data: function () {
    return {
      num: 1, // 用户选择的数字
      sum: 0 // 当前的和
    }
  },
  methods: {
    increment() {
      this.sum += this.num;
    },
    decrement() {
      if (this.sum <= 0) {
        // alert("sum值不能小于0，请检查！");
        this.sum = 0;
        return;
      }
      this.sum -= this.num;
    },
    incrementOdd() {
      // 如果当前求和sum 取余2 为零的话，说明是偶数就不能执行该逻辑
      // 其中0转换成布尔值就是false，可以省略写法
      if (this.sum % 2 !== 0) {
        this.sum += this.num;
      }

      // if (this.num % 2 !== 0) {
      //   this.sum += this.num;
      // }
    },
    incrementWait() {
      setTimeout(() => {
        this.sum += this.num;
      }, 500);
    }
  }
}
</script>

<template>
  <div>
    <h1>当前求和：{{ sum }}</h1>
    <select v-model.number="num">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
    </select>
    <button @click="increment">+</button>
    <button @click="decrement">-</button>
    <button @click="incrementOdd">当前求和为奇数再加+1</button>
    <button @click="incrementWait">等待500毫秒+1</button>
  </div>
</template>

<style scoped>
button {
  margin-left: 5px;
}
</style>